compute melt rate (m/s) using degreeday temperature based model
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=float), | intent(in) | :: | tempAir |
air temperature (°C) |
||
real(kind=float), | intent(in) | :: | tempMelt |
melting temperature (°C) |
||
real(kind=float), | intent(in) | :: | cMelt |
melting coefficient (m/s/°C) |
melt rate (m/s)
FUNCTION DegreeDay & ! ( tempAir, tempMelt, cMelt ) & ! RESULT (melt) IMPLICIT NONE !Arguments with intent(in): REAL (KIND = float), INTENT(IN) :: tempAir !! air temperature (°C) REAL (KIND = float), INTENT(IN) :: tempMelt !! melting temperature (°C) REAL (KIND = float), INTENT(IN) :: cMelt !! melting coefficient (m/s/°C) !local declarations: REAL (KIND = float) :: melt !! melt rate (m/s) !---------------------end of declarations-------------------------------------- IF ( tempAir <= tempMelt ) THEN melt = 0. ELSE melt = cMelt * ( tempAir - tempMelt ) END IF RETURN END FUNCTION DegreeDay